View Javadoc
1 package net.plugin.sql.gui; 2 3 /* 4 * Created by IntelliJ IDEA. 5 * User: birchfield 6 * Date: Aug 18, 2002 7 * Time: 2:12:56 PM 8 * To change template for new class use 9 * Code Style | Class Templates options (Tools | IDE Options). 10 */ 11 12 import net.plugin.sql.beans.DataSource; 13 import net.plugin.sql.listeners.*; 14 15 import javax.swing.*; 16 import java.awt.event.*; 17 import java.awt.BorderLayout; 18 import java.util.*; 19 20 public class SQLFrame extends JInternalFrame implements TableSelectionListener, ItemListener, ActionListener { 21 22 private Collection adhocQueryListeners = null; 23 24 private JSplitPane splitPane = null; 25 26 private SQLDataPanel treePanel = null; 27 28 private SQLDataTablePanel tablePanel= null; 29 30 private DataSource dataSource = null; 31 32 private JTabbedPane tabbedTablePane = null; 33 private JTabbedPane tabbedDataPane = null; 34 35 private JScrollPane treePane = null; 36 private JMenuBar menuBar = null; 37 private JMenu sqlMenu = null; 38 private JMenuItem sqlQueryItem = null; 39 40 public SQLFrame(DataSource dataSource) { 41 super(dataSource.getName(), true, true, true, true); 42 getContentPane().setLayout(new BorderLayout()); 43 this.dataSource = dataSource; 44 adhocQueryListeners = new ArrayList(); 45 46 menuBar = new JMenuBar(); 47 sqlMenu = new JMenu("SQL"); 48 menuBar.add(sqlMenu); 49 sqlQueryItem = new JMenuItem("SQL Query Window"); 50 sqlQueryItem.addItemListener(this); 51 sqlQueryItem.addActionListener(this); 52 sqlMenu.add(sqlQueryItem); 53 getContentPane().add(menuBar, BorderLayout.NORTH); 54 55 tabbedTablePane = new JTabbedPane(); 56 tabbedDataPane = new JTabbedPane(); 57 treePanel = new SQLDataPanel(dataSource); 58 treePane = new JScrollPane(treePanel); 59 tabbedTablePane.addTab("Tables", treePane); 60 treePanel.addTableSelectionListener(this); 61 62 tablePanel = new SQLDataTablePanel(dataSource); 63 tabbedDataPane.addTab("Data", tablePanel); 64 65 66 splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, tabbedTablePane, tablePanel); 67 splitPane.setDividerLocation(250); 68 getContentPane().add(splitPane, BorderLayout.CENTER); 69 } 70 71 public void tableSelected(String tableName) { 72 tablePanel.setTableName(tableName); 73 } 74 75 public void itemStateChanged(ItemEvent e) { 76 System.out.println("SQLFrame.itemStateChanged"); 77 notifyAdhocQueryListeners(dataSource); 78 } 79 80 public void actionPerformed(ActionEvent e) { 81 System.out.println("SQLFrame.actionPerformed"); 82 notifyAdhocQueryListeners(dataSource); 83 } 84 85 86 87 private void notifyAdhocQueryListeners(DataSource dataSource) { 88 for (Iterator iterator = adhocQueryListeners.iterator(); iterator.hasNext();) { 89 AdhocQuerySelectionListener adhocQuerySelectionListener = (AdhocQuerySelectionListener) iterator.next(); 90 adhocQuerySelectionListener.adhocQuerySelected(dataSource); 91 } 92 } 93 94 public void addAdhocQuerySelectionListener(AdhocQuerySelectionListener listener) { 95 adhocQueryListeners.add(listener); 96 } 97 98 public static void main(String[] args) { 99 JFrame frame = new JFrame("Test"); 100 JDesktopPane pane = new JDesktopPane(); 101 DataSource ds = new DataSource(); 102 ds.setName("Test"); 103 ds.setDriver("oracle.jdbc.driver.OracleDriver"); 104 ds.setUrl("jdbc:oracle:thin:@hades.genscape.com:1581:test"); 105 ds.setUser("genscape"); 106 ds.setPassword("gentest"); 107 SQLFrame frme = new SQLFrame(ds); 108 frme.setSize(400, 300); 109 frme.setVisible(true); 110 pane.add(frme); 111 frame.getContentPane().add(pane); 112 frame.setSize(500, 500); 113 frame.show(); 114 } 115 116 117 }

This page was automatically generated by Maven